package com.itawei.d4_listdemo;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
import java.util.ListIterator;
import java.util.function.Consumer;

/**
 * List系列集合的5种遍历方式:
 * 1.迭代器
 * 2.列表迭代器
 * 3.增强for
 * 4.lambda表达式
 * 5.普通for循环
 */
public class ListDemo2 {
    public static void main(String[] args) {
        //1.创建集合对象
        List<String> list = new ArrayList<>();
        //2.添加元素
        list.add("有村架纯");
        list.add("刘亦菲");
        list.add("刘诗诗");
        list.add("章若楠");


        //方式1：迭代器
//        Iterator<String> it = list.iterator();
//        while(it.hasNext()){
//            String s = it.next();
//            System.out.println(s);
//        }

        //方式2：列表迭代器
        ListIterator<String> it = list.listIterator();
        while(it.hasNext()){
            String s = it.next();
            if("章若楠".equals(s)){
                it.add("小松菜奈");
            }
            System.out.println(s);
        }







        //方式3：增强for
//        for (String s : list) {
//            System.out.println(s);
//        }

        //方式4：lambda表达式 首先先写匿名内部类
//        list.forEach(s-> System.out.println(s));


        //方式5：普通for循环
//        for (int i = 0; i < list.size(); i++) {
//            String s = list.get(i);
//            System.out.println(s);
//        }
    }
}
